﻿<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>如果 - 语法 &amp; 使用 | AutoHotkey v2</title>
<meta name="description" content="The 如果 statement specifies one or more statements to execute 如果 an expression evaluates to true." />
<meta name="ahk:equiv-v1" content="commands/IfExpression.htm" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
<script type="text/javascript">$(function(){0<=window.navigator.userAgent.toLowerCase().indexOf("ucbrowser")&&CaoNiMaDeUc()})</script>
</head>
<body>

<h1>如果 (表达式)</h1>

<p>指定在<a href="../Variables.htm#Expressions">表达式</a>计算结果为 True(真) 时要执行的<a href="../Concepts.htm#statement">语句</a>.</p>
<pre class="Syntax"><span class="func">如果</span> (<i>表达式</i>)
{
    <i>语句</i>
}</pre>

<h2 id="Remarks">备注</h2>
<p>如果 <em>如果</em> 语句的表达式的计算结果为 true(即除空字符串或数字 0 以外的任何结果), 则执行其下面的行或<a href="Block.htm">区块</a>. 否则, 如果存在相应的 <a href="Else.htm">否则</a> 语句, 则执行将跳转到其下面的行或区块.</p>
<p>如果 <em>如果</em> 拥有多行, 那么这些行必须用大括号括起来(创建一个<a href="Block.htm">区块</a>). 但是, 如果只有一行属于 <em>如果</em>, 则大括号是可选的. 请参阅此页面底部的示例.</p>
<p>如果表达式以小括号开头, 则 <code>如果</code>后面的空格是可选的, 例如 <code>如果(expression)</code>.</p>
<p id="otb">可以选择使用 <a href="Block.htm#otb">One True Brace(OTB) 样式</a>. 例如:</p>
<pre>如果 (x &lt; y) {
    <em>; ...</em>
}
如果 窗口存在(&quot;无标题 - 记事本&quot;) {
    激活窗口
}
如果 IsDone {
    <em>; ...</em>
} 否则 {
    <em>; ...</em>
}</pre>
<p>与 <em>如果</em> 语句不同, <a href="Else.htm">否则</a> 语句支持任何类型的语句紧跟在其右边.</p>

<h2 id="Related">相关</h2>
<p><a href="../Variables.htm#Expressions">表达式</a>, <a href="SetExpression.htm">赋值表达式(:=)</a>, <a href="../Variables.htm#ternary">三元运算符(a?b:c)</a>, <a href="Block.htm">区块</a>, <a href="Else.htm">否则</a>, <a href="While.htm">While-loop</a></p>

<h2 id="Examples">示例</h2>
<div class="ex" id="ExBasic">
<p><a href="#ExBasic">#1</a></p>
<pre>如果 (内_循环次数 &gt; 100)
    返回

如果 (内_系统运行时间 - StartTime &gt; 2*MaxTime + 100)
{
    信息框 "Too much time has passed."
    退出应用
}

如果 (Color = &quot;Blue&quot; or Color = &quot;White&quot;)
{
    信息框 "The color is one of the allowed values."
    退出应用
}
否则 如果 (Color = &quot;Silver&quot;)
{
    信息框 "Silver is not an allowed color."
    返回
}
否则
{
    信息框 "This color is not recognized."
    退出应用
}</pre>
</div>
<div class="ex" id="ExMultiStatement">
<p><a href="#ExMultiStatement">#2</a>: 单个<a href="../Variables.htm#comma">多语句</a>行不需要用大括号括起来.</p>
<pre>变量 :=  3
如果 (MyVar &gt; 2)
    MyVar++, 变量 :=  MyVar - 4, MyVar .= " test"
信息框 % MyVar  <em>; Shows "0 test".</em>
</pre>
</div>

</body>
</html>